Operacja dwuargumentowa
Operacja dwuargumentowa (zwane także operacją binarną) jest to szczególny typ operacji definiującej przekształcenie dwóch elementów pewnego zbioru w jeden element (zwykle tego samego zbioru). Formalnie, jeśli X jest niepustym zbiorem, to operacja dwuargumentowa na X jest dowolnym odwzorowaniem
\[ f\colon X\times X \rightarrow X, \]
gdzie para uporządkowana \((a,b)\) z X jest przetwarzana na element \(f(a,b)\) również należący do X. Przykłady najczęściej spotykane w matematyce, logice i informatyce to dodawanie, mnożenie, koniunkcja, alternatywa czy konkatenacja ciągów znaków.
Definicja i terminologia
W literaturze spotkać można różne określenia:
- Operacja binarna – najpopularniejsza nazwa w języku polskim.
- Operator dwuargumentowy – używane najczęściej w kontekście programowania oraz języków formalnych.
- Funkcja dwuargumentowa – podkreśla aspekt funkcjonalny (każdej parze argumentów przyporządkowuje dokładnie jeden wynik).
Podstawowe własności
Operacje dwuargumentowe mogą spełniać różne własności algebraiczne, które odgrywają kluczową rolę w budowie struktur algebraicznych:
- Łączność – \(\forall a,b,c\in X:\;f(f(a,b),c)=f(a,f(b,c))\). Przykład: dodawanie liczb całkowitych.
- Komutatywność – \(\forall a,b\in X:\;f(a,b)=f(b,a)\). Przykład: mnożenie liczb rzeczywistych.
- Istnienie elementu neutralnego – istnieje \(e\in X\) takie, że \(\forall a\in X:\;f(a,e)=f(e,a)=a\). Przykład: zero dla dodawania.
- Istnienie elementu odwrotnego – dla każdych \(a\in X\) istnieje \(b\in X\) taki, że \(f(a,b)=e\), gdzie \(e\) jest elementem neutralnym.
- Idempotencja – \(\forall a\in X:\;f(a,a)=a\). Przykład: operacja „i” (koniunkcja) w logice.
- Absorpcja – \(\forall a,b\in X:\;f(a,g(a,b))=a\) przy jednoczesnym spełnieniu podobnej własności dla drugiej operacji \(g\). Przykład: operacje \(\land\) i \(\lor\) w algebrze Boole’a.
Przykłady w matematyce
Najbardziej znane operacje dwuargumentowe pojawiają się w arytmetyce oraz algebrze:
- Dodawanie \((+)\) – \(f(a,b)=a+b\) dla liczb całkowitych, wymiernych, rzeczywistych czy zespolonych.
- Mnożenie \((\cdot)\) – \(f(a,b)=a\cdot b\).
- Odejmowanie – choć nie jest łączne, jest definowane jako \(a-b = a+(-b)\).
- Podzielenie – definicja wymaga niezerowego drugiego argumentu.
- Potęgowanie – w wersji dwuwartościowej \(a^b\) (gdzie \(b\) jest wykładnikiem).
- Największy wspólny dzielnik (\(\gcd\)) i najmniejsza wspólna wielokrotność (\(\operatorname{lcm}\)).
- Iloczyn kartezjański – \((a,b)\in A\times B\) dla zbiorów A i B.
Operacje dwuargumentowe w informatyce i logice
W logice oraz w programowaniu operacje binarne odgrywają fundamentalną rolę:
- Operatory arytmetyczne:
+,-,*,/. - Operatory logiczne:
&&(koniunkcja),||(alternatywa),!(negacja – jednoargumentowa). - Operatory bitowe:
&,|,^,<<,>>. - Operatory porównania:
==,!=,<,>,<=,>=. - Konkatenacja łańcuchów znaków w wielu językach (np.
+w Pythonie).
Klasyfikacja
Operacje dwuargumentowe można podzielić według kilku kryteriów:
- Ze względu na zbiór docelowy
- – Wewnętrzne (wynik należy do tego samego zbioru, np. dodawanie w \(\mathbb{Z}\)).
– Zewnętrzne (wynik może należeć do innego zbioru, np. dzielenie dwóch liczb całkowitych prowadzi do liczby wymiernej). - Ze względu na rodzaj przetwarzanych elementów
- – Arithmetyczne – operują na liczbach.
– Logiczne – operują na wartościach prawda/fałsz.
– Strukturalne – np. konkatenacja list, łączenie grafów. - Ze względu na własności algebraiczne
- – Łączne i komutatywne (np. dodawanie).
– Niełaczne (np. odejmowanie).
– Idempotentne (np. operacja minimummin).
– Rozdzielne względem innej operacji (np. mnożenie względem dodawania).
Zastosowania
Operacje dwuargumentowe są nieodzowne w wielu dziedzinach:
- Algebra – definiowanie struktur takich jak grupa, półgrupa, pierścień, ciało.
- Kryptografia – użycie operacji modularnych, np. mnożenie modulo n.
- Teoria grafów – operacje łączenia wierzchołków i krawędzi.
- Programowanie – implementacja algorytmów (np. sortowanie przy użyciu porównań).
- Analiza danych – operacje na wektorach i macierzach (dodawanie, iloczyn skalarny).
Historia
Pierwsze formalne rozważania nad operacjami binarnymi pojawiły się w pracach Karola Friedricha Gaussa i Augusta Cauchy'ego w XIX wieku, kiedy to zdefiniowano działania arytmetyczne na liczbach zespolonych. Rozwój logiki matematycznej w latach 30. XX wieku (prace Alana Turinga, Alonzo Church'a) ugruntował pojęcie operatorów dwuargumentowych w kontekście teorii obliczeń.
Notacja i symbolika
W literaturze matematycznej i informatycznej przyjmuje się różne symbole:
- Standardowa notacja funkcyjna: \(f(a,b)\).
- Infix – powszechnie stosowane w arytmetyce: \(a + b\), \(a \land b\).
- Prefix (notacja polska):
+ a b– wykorzystywana w językach programowania Lisp. - Postfix (odwrotna notacja polska – RPN):
a b +– używana w niektórych kalkulatorach.
Powiązane pojęcia
Więcej informacji na temat tematu można znaleźć w następujących artykułach encyklopedycznych: